//
//	MCInfoRecommandRecord.swift
//	Model file generated using JSONExport: https://github.com/Ahmed-Ali/JSONExport

import Foundation 
import ObjectMapper


class MCInfoRecommandRecord : NSObject, NSCoding, Mappable{

	var createTime : String?
	var createUser : Int?
	var enName : String?
	var fileList : [MCInfoRecommandFileList]?
	var firstLetterUpper : String?
	var id : Int?
	var introduce : String?
	var isDeleted : Int?
	var previewPic : String?
	var sort : Int?
	var status : Int?
	var updateTime : String?
	var updateUser : Int?
	var version : Int?
	var zhName : String?


	class func newInstance(map: Map) -> Mappable?{
		return MCInfoRecommandRecord()
	}
	required init?(map: Map){}
	private override init(){}

	func mapping(map: Map)
	{
		createTime <- map["createTime"]
		createUser <- map["createUser"]
		enName <- map["enName"]
		fileList <- map["fileList"]
		firstLetterUpper <- map["firstLetterUpper"]
		id <- map["id"]
		introduce <- map["introduce"]
		isDeleted <- map["isDeleted"]
		previewPic <- map["previewPic"]
		sort <- map["sort"]
		status <- map["status"]
		updateTime <- map["updateTime"]
		updateUser <- map["updateUser"]
		version <- map["version"]
		zhName <- map["zhName"]
		
	}

    /**
    * NSCoding required initializer.
    * Fills the data from the passed decoder
    */
    @objc required init(coder aDecoder: NSCoder)
	{
         createTime = aDecoder.decodeObject(forKey: "createTime") as? String
         createUser = aDecoder.decodeObject(forKey: "createUser") as? Int
         enName = aDecoder.decodeObject(forKey: "enName") as? String
         fileList = aDecoder.decodeObject(forKey: "fileList") as? [MCInfoRecommandFileList]
         firstLetterUpper = aDecoder.decodeObject(forKey: "firstLetterUpper") as? String
         id = aDecoder.decodeObject(forKey: "id") as? Int
         introduce = aDecoder.decodeObject(forKey: "introduce") as? String
         isDeleted = aDecoder.decodeObject(forKey: "isDeleted") as? Int
         previewPic = aDecoder.decodeObject(forKey: "previewPic") as? String
         sort = aDecoder.decodeObject(forKey: "sort") as? Int
         status = aDecoder.decodeObject(forKey: "status") as? Int
         updateTime = aDecoder.decodeObject(forKey: "updateTime") as? String
         updateUser = aDecoder.decodeObject(forKey: "updateUser") as? Int
         version = aDecoder.decodeObject(forKey: "version") as? Int
         zhName = aDecoder.decodeObject(forKey: "zhName") as? String

	}

    /**
    * NSCoding required method.
    * Encodes mode properties into the decoder
    */
    @objc func encode(with aCoder: NSCoder)
	{
		if createTime != nil{
			aCoder.encode(createTime, forKey: "createTime")
		}
		if createUser != nil{
			aCoder.encode(createUser, forKey: "createUser")
		}
		if enName != nil{
			aCoder.encode(enName, forKey: "enName")
		}
		if fileList != nil{
			aCoder.encode(fileList, forKey: "fileList")
		}
		if firstLetterUpper != nil{
			aCoder.encode(firstLetterUpper, forKey: "firstLetterUpper")
		}
		if id != nil{
			aCoder.encode(id, forKey: "id")
		}
		if introduce != nil{
			aCoder.encode(introduce, forKey: "introduce")
		}
		if isDeleted != nil{
			aCoder.encode(isDeleted, forKey: "isDeleted")
		}
		if previewPic != nil{
			aCoder.encode(previewPic, forKey: "previewPic")
		}
		if sort != nil{
			aCoder.encode(sort, forKey: "sort")
		}
		if status != nil{
			aCoder.encode(status, forKey: "status")
		}
		if updateTime != nil{
			aCoder.encode(updateTime, forKey: "updateTime")
		}
		if updateUser != nil{
			aCoder.encode(updateUser, forKey: "updateUser")
		}
		if version != nil{
			aCoder.encode(version, forKey: "version")
		}
		if zhName != nil{
			aCoder.encode(zhName, forKey: "zhName")
		}

	}

}